﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using moose.extension;

namespace moose.irc.standard
{
    /// <summary>
    /// Connect to an IRC Server
    /// </summary>
    [CLSCompliant(true)]
    [Command(
        Name = "moose-cmd-connect",
        Description = "Request Core connect to IRC server",
        Author = "Mike MacKenzie-Jamer <email: mikejamer@gmail.com>",
        Version = "0.1")]
    [Trigger(TriggerText = "moose.irc.standard.ConnectCommand")]
    public sealed class ServerOverrideCommand : IrcAction
    {
        /// <summary>
        /// Overriding Constructor
        /// </summary>
        /// <param name="action_overrides"></param>
        public ServerOverrideCommand(LinkedList<IrcAction> action_overrides)
            : base(action_overrides)
        {
            return;
        }

        protected override IrcState valid_states()
        {
            return IrcState.Disconnected;
        }

        protected override void action(IrcClient client, IrcMessage message)
        {
            client.echo("Connect Command overridden, now executing default action");
            base_action(client, message);
            return;
        }
    }
}
